var validator;
$(function() {
	setDate(new Date());
	validateEditForm();
//	searchData();
	$("#submit").click(function(){
		if ($("#keepAccountForm").valid()) {//校验表单
			var typeValue=$('#type').val();
			if(typeValue=='2' && $('#transferAccount1').val()==  $('#transferAccount2').val()){
				hiAlert('转账的账户不能相同！','提示');
				return false;
			}
			validator.resetForm();//重置验证
			var paramData = $('#keepAccountForm').serialize();
			paramData+="&detail.type="+typeValue;
			$.ajax({
				 type : "POST",
				 url : 'newOrUpdateKeepAccountsDetail.do',
				 data : paramData,//
				 dataType : 'json',
				 success : function(response, ioArgs) {
					 $("#clear").click();
					 hiOverAlert(response.OPERATOR_RESULT);
//					 detailList.query({
//							click : false
//						});
				}
			});
		}
	});
	/**
	 * 记账类型改变
	 */
	$('#type').change(function(){
		 $("#clear").click();
		var value=$('#type').val();
		$("td[name='expenditureTd']").hide();
		$("td[name='incomeTd']").hide();
		$("td[name='accountTransferTd']").hide();
		$("td[name='accountBorrowTd']").hide();
		$("td[name='merchantTd']").hide();
		$("td[name='accountBorrowTd']").hide();
		$("td[name='accountLoanOutTd']").hide();
		$("td[name='accountPayDebtTd']").hide();
		$("td[name='accountCollectDebtTd']").hide();
		$("select[name='detail.account.id']").attr('name',null);
		$("select[name='detail.toAccount.id']").attr('name',null);
		$("select[name='detail.category.id']").attr('name',null);
		switch(value){
		case '0':
			$("td[name='expenditureTd']").show();
			$("td[name='merchantTd']").show();
			$("#subExpenditureCategory").attr("name","detail.category.id");
			$("#expenditureAccount").attr("name","detail.account.id");
			
			break;
		case '1':
			$("td[name='incomeTd']").show();
			$("#subIncomeCategory").attr("name","detail.category.id");
			$("#incomeAccount").attr("name","detail.account.id");
			
			break;
		case '2':
			$("td[name='accountTransferTd']").show();
			$("#transferAccount1").attr("name","detail.account.id");
			$("#transferAccount2").attr("name","detail.toAccount.id");
			break;
		case '3':
			$("td[name='accountBorrowTd']").show();
			$("#borrowAccount1").attr("name","detail.account.id");
			$("#borrowAccount2").attr("name","detail.toAccount.id");
			break;
		case '4':
			$("td[name='accountLoanOutTd']").show();
			$("#loanOutAccount1").attr("name","detail.account.id");
			$("#loanOutAccount2").attr("name","detail.toAccount.id");
			break;
		case '5':
			$("td[name='accountPayDebtTd']").show();
			$("#payDebtAccount1").attr("name","detail.account.id");
			$("#payDebtAccount2").attr("name","detail.toAccount.id");
			break;
		case '6':
			$("td[name='accountCollectDebtTd']").show();
			$("#collectDebtAccount1").attr("name","detail.account.id");
			$("#collectDebtAccount2").attr("name","detail.toAccount.id");
			break;
		}
	});
	
	/**
	 * 一级分类改变，二级分类跟随改变
	 */
	$("#expenditureCategory").change(function(){
		changeExpenditureCategorySelectValue();
});
	function changeExpenditureCategorySelectValue(){
		var expenditureCategory = $("#expenditureCategory").val();
		$.ajax({
			type : "POST",
			url : 'getSubCategoryByParentId.do',
			data : {'parentId':expenditureCategory},//
			dataType : 'json',
			success : function(response, ioArgs) {
				$('#subExpenditureCategory option').remove();
				var subCategoryList =response.categoryList;
				if(subCategoryList != null){
					for(var i=0;i<subCategoryList.length;i++){
						var temp = subCategoryList[i];
						var opt =$("<option/>").attr("value",temp["id"]).html(temp["categoryName"]);
						opt.appendTo($('#subExpenditureCategory'));
					}
				}
			}
		});
	}
	
	
	/**
	 * 一级分类改变，二级分类跟随改变
	 */
	$("#incomeCategory").change(function(){
//		alert(1);
		changeIncomeCategorySelectValue();
});
	function changeIncomeCategorySelectValue(){
		var expenditureCategory = $("#incomeCategory").val();
		$.ajax({
			type : "POST",
			url : 'getSubCategoryByParentId.do',
			data : {'parentId':expenditureCategory},//
			dataType : 'json',
			success : function(response, ioArgs) {
				$('#subIncomeCategory option').remove();
				var subCategoryList =response.categoryList;
				if(subCategoryList != null){
					for(var i=0;i<subCategoryList.length;i++){
						var temp = subCategoryList[i];
						var opt =$("<option/>").attr("value",temp["id"]).html(temp["categoryName"]);
						opt.appendTo($('#subIncomeCategory'));
					}
				}
			}
		});
	}

	function setDate(dt){
		if(dt != null){
			$('#happenedDate').val(dt.pattern("yyyy-MM-dd"));
		}else{
			$('#happenedDate').val("");
		}
	}
	
	
	/**
	 * 重置
	 */
	 $("#clear").click(function(){
		 $("#reset").click();
		 setDate(new Date());
		 validator.resetForm();//重置验证
		 changeExpenditureCategorySelectValue();
		 changeIncomeCategorySelectValue();
		 
	 });
	 
});


//
//function searchData() {
//	detailList = $('#tableDiv').grid(
//		{
//			url : "findKeepAccountsDetail.do",
//			root : 'detailList',
//			paging:true,
//			defaultParams : {
//				click : true
//			},
//			fields : [
//					{id : "type", name : '记账类型', options:{0:'支出' ,1:'收入', 2:'转账',3:'借入',4:'借出',5:'还债',6:'收债'}},
//					{id : "account",subattr : "accountName", name : '账户'},
//					{id : "toAccount",subattr : "accountName", name : '目标账户'},
//					{id : "amount",name : '金额'},
//					{id : "category", subattr : "categoryName",name : '分类'},
//					{id : "merchant",subattr : "merchantName", name : '商店'},
//					{id : "happenedDate",name : '日期',type:'date'},
//					{id : "project",subattr : "projectName", name : '项目'},
//					{id : "remark",name : '备注'},
//					{id : "createDate", type:'date',name : '创建时间'},
//					
//					{name : "操作",style : {'text-align' : 'center'},
//						render : function(data) {
//							var box = $("<span/>");
//							//编辑
//							var edit=$('<a />').attr("href","javascript:void(0)").attr('class','button_a').append($('<span />').html("编辑  ")).bind('click',function(){
//								$.ajax({
//									type : "POST",
//									url : 'getSuperAndSubCategoryBySubId.do',
//									data : {'id':data.category ==null?"":data.category.id},//
//									dataType : 'json',
//									success : function(response, ioArgs) {
//										$('#secondClassCategory option').remove();
//										var subCategoryList =response.categoryList;
//										if(subCategoryList != null){
//											for(var i=0;i<subCategoryList.length;i++){
//												var temp = subCategoryList[i];
//												var opt =$("<option/>").attr("value",temp["id"]).html(temp["categoryName"]);
//												opt.appendTo($('#secondClassCategory'));
//											}
//										}
//										$('#type').val(data.type);
//										$('#type').change();
//										$('#detailId').val(data.id);
//										$('#firstClassCategory').val(response.parentId);
//										$('#secondClassCategory').val(data.category==null?"":data.category.id);
//										$('#account').val(data.account.id);
//										$('#project').val(data.project.id);
//										$('#merchant').val(data.merchant==null ? "":data.merchant.id);
////										$('#happenedDate').val(data.happenedDate.pattern("yyyy-MM-dd"));
////										setDate(data.happenedDate);
//										$('#happenedDate').val(data.happenedDate);
//										$('#amount').val(data.amount);
//										$('#remark').val(data.remark);
//									}
//								});
//								
//								
//								
//								
//							}); 	
//							edit.appendTo(box);
//								
//							//删除
//							var deletaObj = $('<a />').attr("href", "#").attr('class', 'button_a').append($('<span />').html("删除  ")).bind(
//							'click',function() {
//								hiConfirm('确认删除该记录？', '提示', function(flag) {
//									if(flag){
//										$.ajax({
//											type : "POST",
//											url : 'deleteKeepAccountsDetail.do',
//											data : {
//												'id' : data.id
//											},
//											dataType : 'json',
//											success : function(response,ioArgs) {
//												hiOverAlert(response.OPERATOR_RESULT);
//												detailList.query({
//													click : false
//												});
//											}	
//										});
//								    }
//								});
//							});
//
//						    deletaObj.appendTo(box);
//							return box;
//
//						}
//					} ]
//		});
//}
/**
 * 校验规则
 */
function validateEditForm(){  
	 validator= $("#keepAccountForm").validate({  
		 success:'checked',
		 rules: {
			 'detail.happenedDate': {   
				 required:true
			 },
			 'detail.amount': {
				 required:true,
				 number:true,	    	
				 rangelength:[0,10]
			 }
		 },
		 messages:{			
			 'detail.happenedDate': {   
				 required:"请填写日期！"
			 },
			 'detail.amount': {	
				 required:"请填写金额！",
				 number:"金额只能为数字！",	    	
				 rangelength:"长度在10以内！"
			 }
		 }
	 });
} 